This invention relates to a packet transfer apparatus that transfers packets, and particularly to a technology for controlling a bandwidth of transferred packets.
Storage-centric network systems that store user terminals' data in storage devices at remote data centers are now attracting increasing attention. The storage-centric network systems can avoid the risk of interruption of business because they preserve data from elimination even if user terminals are broken by natural disasters, fires, enterprise terrorism, etc.
The storage-centric network systems usually communicate through the iSCSI (Internet Small Computer Systems Interface). This allows user terminals to access storage devices through IP networks. The access includes data read (RD) and data write (WR).
The iSCSI is a protocol for sending/receiving SCSI (Small Computer System Interface) commands through an IP network. The SCSI is a standard for connecting terminals such as personal computers and peripheral devices such as storage devices.
Processes performed in a storage-centric network system are now briefly described.
FIG. 24 is an explanatory diagram illustrating a read operation in a conventional storage-centric network system.
In FIG. 24, a user terminal 100 is guaranteed to use a contracted bandwidth defined by a contract with a wide area network carrier. Edge switches 103-1 and 103-2 discard packets exceeding the contracted bandwidth when detecting traffic exceeding the contracted bandwidth.
A read operation in the storage-centric network system is now described.
First, the user terminal 100 requesting a data read sends an iSCSI command RD request 200 to a storage 105. The storage 105, receiving the RD request 200, stores the corresponding RD data in an RD packet 201 and sends the packet 201 toward the user terminal 100.
However, the traffic of the sent RD data packet 201 may exceed the contracted bandwidth. Then the RD data packet 201 exceeding the contracted bandwidth is discarded on the way, e.g. by bandwidth control 203 of the edge switch 103-2.
FIG. 25 is an explanatory diagram illustrating a write operation in the conventional storage-centric network system.
The user terminal 100 requesting a data write sends an iSCSI command data WR request 300 to the storage 105. When the storage 105 receiving the WR request 300 completes preparations for the data write, the storage 105 sends an iSCSI packet R2T (Ready to Transfer) 301 to the user terminal 100. The user terminal 100, receiving the R2T 301, stores the corresponding WR data in a WR data packet 302 and sends the packet 302 toward the storage 105.
However, the traffic of the sent WR data packet 302 may exceed the contracted bandwidth. Then the WR data packet 302 exceeding the contracted bandwidth is discarded on the way, e.g. by bandwidth control 304 of the edge switch 103-1.
In this way, packets may be discarded in the storage-centric network system when the traffic becomes too high. The discarding of packets lowers the efficiency of use of the storage-centric network system and reduces throughput. Therefore the storage-centric network systems need to solve the problem of discarding packets.
A known conventional techniques for preventing discarding of packets is a technique of providing a traffic shaping unit in the packet transfer device 104 (refer to JP 2000-349763 A). The traffic shaping unit controls intervals of packet transfer to prevent traffic on the wide area network from exceeding the contracted bandwidth.
More specifically, first, the traffic shaping unit stores packets sent from the user terminal in its own packet buffer. The traffic shaping unit next measures the amount of data of packets read from the packet buffer. Then, on the basis of the measured amount of data, the traffic shaping unit provides control so that the amount of data read from the packet buffer does not exceed the contracted bandwidth.
Refer also to J. Satran, et al., RFC3720-Internet Small Computer Systems Interface (refer to http://www.faqs.org/rfcs/rfc3720.html).